<?php
    include 'config.php';
    /** 1、连接数据库、判断错误、选择字符集*/
    function connect($host=DB_HOST,$user=DB_USER,$password=DB_PWD,$database=DB_NAME,$port=DB_PORT){
        /**@忽略当前行的所有报错*/
        $link = @mysqli_connect($host,$user,$password,$database,$port);
        /**设置字符集 */
        mysqli_set_charset($link,DB_CHARSET);
        /**判断连接是否成功 */
        if(mysqli_connect_errno($link)){
            /**
             * 错误判断
             * mysqli_errno() 函数返回最近调用函数的最后一个错误代码-返回值： 返回错误代码值。如果没有错误发生则返回 0。
             * mysqli_error() 函数返回最近调用函数的最后一个错误描述-返回值： 返回一个带有错误描述的字符串。如果没有错误发生则返回 ""。
             * 例如：这里若为@mysqli_error($link)，则也会忽略该行错误
             */
            die("连接错误的错误代码".mysqli_connect_errno().",连接失败原因描述:".mysqli_connect_error());
        }else{
            // echo "连接成功";
            return $link;//返回连接实例对象，后期操作都会基于该对象
        }
    }
    /**2、执行一条SQL语句，返回结果集对象或布尔值 */
    function execute($link,$query){
        $result = mysqli_query($link,$query);
        //var_dump(mysqli_errno($link));出现错误时输出错误码，0表示正确，其他均为错误
        /**判断执行是否成功 */
        if(mysqli_errno($link)){
            exit(mysqli_error($link));//若出现错误，则返回错误描述
        }
        return $result;//若没问题，则返回最终结果
    }
    /**3、关闭数据库 */
    function close($link){
        /**成功时返回 TRUE ， 或者在失败时返回 FALSE */
        $result = mysqli_close($link);
        if(!$result){
            exit('关闭数据库时出错，错误为'.mysqli_error($link));
        }
    }